package eventos.aceptar;

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JOptionPane;

import logica.EntidadRol;

import vista.paneles.NingunElementoSeleccionadoException;
import vista.ventanas.VentanaEntidadRol;
import vista.ventanas.VentanaRelacion;

public class EventoAceptarEntidadRol  extends MouseAdapter {
	
	private VentanaEntidadRol ventana;
	
	public EventoAceptarEntidadRol(VentanaEntidadRol ventana)
	{
		super();
		this.ventana = ventana;
	}
	
	public void mouseClicked(MouseEvent e)
	{
		EntidadRol entidadRol;
		try
		{
			VentanaRelacion ventanaPadre = (VentanaRelacion) this.ventana.getOwner();
		
			if ((entidadRol = this.ventana.getEntidadRol()) != null)
			{
				ventanaPadre.agregarEntidadRol(entidadRol);
				
				this.ventana.setVisible(false);
				this.ventana = null;
			}
		
		}
		
		catch (NingunElementoSeleccionadoException nada) 
		{
			JOptionPane.showMessageDialog(this.ventana, nada.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
		}
		
		catch (NumberFormatException num)
		{
			JOptionPane.showMessageDialog(this.ventana, "Error en las especificaciones de la cardinalidad. Debe ser un número o 'n'", "Error en la cardinalidad", JOptionPane.ERROR_MESSAGE);
		}
	}
}
